#ifndef CAMERATESTADAPTOR_H
#define CAMERATESTADAPTOR_H

#include "cameratestadaptor_global.h"
#include "sptestadaptor.h"
#include "lfscam.h"

class CAMERATESTADAPTORSHARED_EXPORT CameraTestAdaptor
        : public SPTestAdaptor
{
    Q_OBJECT
    static int typeId;

public:
    Q_INVOKABLE explicit CameraTestAdaptor();
    ~CameraTestAdaptor();

public slots:
    int GetStatus(QVariant& timeout, QVariant& LFSResult);
    int GetCapabilities(QVariant& timeout, QVariant& LFSResult);

    int TakePicture(QVariant& camera, QVariant& szPictureFile, QVariant& timeout, QVariant& LFSResult);

private:
    void formatStatusInfo(LPLFSCAMSTATUS pLFSCAMStatus, QVariant& szLFSCAMStatus);
    void formatCapabilitiesInfo(LPLFSCAMCAPS pLFSCAMCaps, QVariant& szLFSCAMCaps);
};

#endif // CAMERATESTADAPTOR_H
